直线检测
Hough变换图像分割实例ꢀ程序如下:
*
*
*
*
*
*
*
*
*
*
*
*
*
*
读取图像ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ read_image (Image, 'fabrik')
获得目标区域图像ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀrectangle1_domain (Image, ImageReduced, 170, 280, 310, 360)
用Sobel边缘检测算子提取边缘ꢀꢀꢀꢀꢀꢀꢀꢀꢀsobel_dir (ImageReduced, EdgeAmplitude, EdgeDirection, 'sum_abs', 3)
设置输出颜色为红色ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀdev_set_color ('red')
阈值分割得到图像ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀthreshold (EdgeAmplitude, Region, 55, 255)
截取图像ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ reduce_domain (EdgeDirection, Region, EdgeDirectionReduced)
进行Hough变换ꢀꢀꢀhough_lines_dir (EdgeDirectionReduced, HoughImage, Lines, 4, 2, 'mean', 3, 25, 5, 5, 'true', Angle, Dist)
将霍夫变换提取直线以普通形式描述的输入行存储为区域ꢀgen_region_hline (LinesHNF, Angle, Dist)
显示图像ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀdev_display (Image)
设置输出颜色数目ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀdev_set_colored (12)
设置输出填充方式为“轮廓”ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀdev_set_draw ('margin')
显示LinesHNFꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ dev_display (LinesHNF)
设置输出填充方式为“填充”
显示Lines
dev_set_draw ('fill')
dev_display (Lines)